// 进行axios的前置拦截和后置拦截
import axios from 'axios'
import Element from 'element-ui'
import router from './router'
import store from './store'

axios.defaults.baseURL="http://localhost:8081"

// 拦截request请求 前置拦截
axios.interceptors.request.use(config => {
    return config
})

axios.interceptors.response.use(response => {
    let res = response.data
    console.log("================")
    console.log(res)
    console.log("================")
    if(res.code === 200){
        return response
    } else {
        Element.Message.error(res.msg,{duration:3*1000})
        return Promise.reject(response.data.msg) //结束请求，返回异常信息
    }
}, error => {
    console.log(error)
    if(error.response.data){
        error.message = error.response.data.msg
        // 这样就会返回类似“用户不存在”而不是“...404之类看不懂的东西”
    }
    if(error.response.status === 401){//401是没登陆 403是没权限(不是admin之类)
        store.commit("REMOVE_INFO")
        router.push("/login")
    }
    Element.Message.error(error.message,{duration:3*1000})
    return Promise.reject(error)
})